Messstellen für das Monitoring 2018
Wed, Oct 4, 2017Auswahlkriterien
- kleiner 30km² (0.46- 29.94) Einzugsgebietsfläche
- grrößer 40% (0.4 - 0.98) Landwirtschaft
- keine Kläranlage
Anzahl der zukünftigen Probestellen pro Bundesland
| BL | Bundesland | ATKIS_LAWI% | ALVBERICHT_LAWI% | KS% | MST_380 | MST_190 |
|---|---|---|---|---|---|---|
| BW | Baden-Württemberg | 7.5 | 6.9 | 13.0 | 28 | 14 |
| BY | Bayern | 17.9 | 17.6 | 15.5 | 68 | 34 |
| BB | Brandenburg | 8.4 | 8.6 | 3.0 | 32 | 16 |
| HE | Hessen | 4.6 | 4.0 | 7.4 | 17 | 9 |
| MV | Mecklenburg-Vorpommern | 8.1 | 9.1 | 2.0 | 31 | 16 |
| NI | Niedersachsen | 14.7 | 15.8 | 9.3 | 56 | 28 |
| NW | Nordrhein-Westfalen | 9.2 | 9.0 | 21.1 | 35 | 18 |
| RP | Rheinland-Pfalz | 3.9 | 3.5 | 4.8 | 15 | 8 |
| SL | Saarland | 0.4 | 0.3 | 1.2 | 2 | 1 |
| SN | Sachsen | 5.5 | 6.0 | 5.1 | 21 | 11 |
| ST | Sachsen-Anhalt | 8.2 | 8.4 | 2.8 | 31 | 16 |
| SH | Schleswig-Holstein | 6.5 | 5.6 | 3.4 | 25 | 13 |
| TH | Thüringen | 5.0 | 5.2 | 2.7 | 19 | 10 |
Verteilung der Einzugsgebiete nach dem Anteil an Landwirtschaft und der Einzugsgebietsgröße.


## Verschneiden mit WWTP_2000 layer (v. Sebastian Maassen, Jörg Rechenberg (UBA) erhalten)
test = ezg[-unlist(st_intersects(ezg, wwtp)),]
mapview(test)
class(test)
mapview(ezg)
st_crs(ezg) = st_crs(wwtp)
Zufällige Auswahl von Messstellen pro Bundesland
Ausgehend von der benötigten Anzahl an Messstellen pro Bundesland werden zufällige Messstellen in jedem Bundesland gezogen. Die Verteilung des Anteils an landwirtschaflticher Fläche ähnelt zufällig der Gesamtverteilung.
setDT(ezg_dt)
site_state2 = site_state[site_state$BL != 'SL', ] # Saarland doesn't have entries
ns = setNames(site_state2$MST_190, site_state2$BL)
set.seed(12345678)
s2 = ezg_dt[ezg_dt[ ,
sample(.I, ns[match(unlist(.BY), names(ns))]),
by = 'state']$V1, ]
Verteilung der gezogenen Messstellen


Karte der ausgewählten Einzugsgebiete
Weitere (noch nicht beachtete) Auswahlkriterien
- Handynetz
- Abstand zwischen den Einzugsgebieten
- Kläranlagen
Messstellen nahe Landau
Catchments in a 50km circumference of Landau
# German cities
drv = dbDriver('PostgreSQL')
con = dbConnect(drv, user = DBuser, dbname = DBname_1, host = DBhost, port = DBport, password = DBpassword)
# Why is it so slow???!! https://github.com/r-spatial/sf/issues/503
#pl = st_read_db(con, query = "SELECT * FROM spatial_derived.germany_places")
pl = get_postgis_query(con, "SELECT * FROM spatial_derived.germany_places", geom_name = 'geom')
pl = st_as_sf(pl)
invisible(dbDisconnect(con))
invisible(dbUnloadDriver(drv))
# grep Ladau
ld = pl[grep('Landau.+Pfalz', pl$name), ]
# Intersect catchments in a 50km circumference of Landau
st_crs(ld) = st_crs(ezg) #! p4s not matching 100%, change this in DB
## Warning: st_crs<- : replacing crs does not reproject data; use st_transform
## for that
ezg_ld_50 = ezg[unlist(st_intersects(st_buffer(ld, 50000), ezg)), ]
# interactive table
datatable(as.data.frame(ezg_ld_50)[ ,-7], caption = 'Catchments in a 50km circumference of Landau')
Auswahl um Landau
# manual selection
ezg_ld = c('RP_2375895800', 'RP_2378897000', 'RP_2391899300', 'BW_KR019.00')
# plot intersection area and all RP catchments
mapview(st_buffer(ld, 50000), color = 'goldenrod', lwd = 2, alpha.regions = 0,
map.type = 'Esri.WorldImagery') +
mapview(ezg[ezg$state %in% c('BW', 'HE', 'RP'), ], alpha.regions = 0.2, layer.name = 'EZG in BW, HE, RP') +
mapview(ezg[ezg$site_id %in% ezg_ld, ], color = 'red', lwd = 3, layer.name = 'ausgewählte EZG')
datatable(as.data.frame(ezg)[ezg$site_id %in% ezg_ld, -7])